
===================
== WHAT IS THIS? ==
===================

"Windows Binary Type Detector" is an app that tells you what CPU a Windows app is compiled for.

This also applies to DLLs and any other files that follow one of the many known Windows binary format types.

This app also tries to check if an app is actually a DOS app, or even an OS/2 app, as many of these run on different Windows versions, so it's relevant.

========================
== How DO I USE THIS? ==
========================

Just drag'n'drop whatever files you want to check into the app icon.

You can use the command-line interface, too, if that's your thing.

Anything other than a Windows (or DOS or OS/2) app/lib can be dropped into the program, too, but it will just tell you that the file is not such an app/lib.

Dropping in a folder will just say "File does not exist" or similar.

If you want an app that will tell you as much about a file as possible and is very thorough, relatively complete and an authority on many file types, check out the *NIX program/utility known as "file", whose source code is also available out there.

====================
== WHY MAKE THIS? ==
====================

When I and many others were fine-tuning our own installations of Windows NT for PowerPC computers, which recently includes even PowerMacs, Nintendo GameCube, Wii and Wii U, I noticed there was hardly any viable, or quick and friendly, way of telling if we were running:

- A native PowerPC application;
- A 16-bit x86 application (via the built-in x86 16-bit CPU translators);
- A 32-bit x86 application (via either Wx86 or Motorola SoftWindows 32 CPU translators).

This application makes it extremely quick and easy to do such checks.

This is desired so that we know what programs are compiled to run natively CPU-wise, and what programs aren't.

Once you identify those that aren't, you know there can be an incentive to recompile it, port it or build a replacement program, and run THAT natively.

This program should be usable on just about any 32-bit or 64-bit x86 Windows machine, from where you can also check for PowerPC apps etc..

It also should be usable on any Windows NT PowerPC machine, tested and confirmed working on Windows NT 4.0 SP2 Workstation on a Wii.

====================================
== DO I ALSO GET THE SOURCE CODE? ==
====================================

Yes, the whole source code is included in that single "WBTD.c" file. It is MIT-licensed with the intent so that anyone can use it with a lot of freedom.

It is coded in strict and pure ANSI C89, so you should also be able to port it nearly everywhere. I hope to finish a Mac OS 9 ~ System 7 port someday, just because.

It should also compile as-is for Windows NT for MIPS and for DEC Alpha devices, and perhaps even for the various Windows CE devices and architectures out there, but that is untested.

The x86 version is 32-bit, and was compiled using the latest version of Visual Studio 2022 available for Windows 7 SP1. I did not test it anywhere else.

The PPC version was compiled using Microsoft Visual C++ 4.1 (AKA 4.0a) with the PowerPC edition on Windows NT 4.0 SP2 Workstation on a Wii.

For some reason, the app size for the PPC size is quite bigger (91 KB instead of 13 KB), presumably due to the compiler being extremely old and not being on the same level of polish as the one used for the x86 version. Perhaps it is including some additional, unnecessary bloat? Not that it actually matters, as both programs are still extremely small in size, and also run extremely quickly.


I hope you enjoy it and find it useful.

- Jatoba AKA Jubadub